package com.yhb.channel.impl.BJCJ.http.utils;

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Set;
import java.util.TreeMap;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;

/** * @author  段言琪
	* @date 2019年4月25日 上午10:18:29 
	* @version 1.0 
	* @since  jdk1.8
	*/
public class BJCJSortUtil {

	 /** * @author  段言琪
     * @date 2019年1月18日 上午10:38:29
     * @version 1.0
     * 通过Key排序 并拼接为：key1=value1&key2=value2&
     */
	public static String sortJson(JSONObject json){
		Set<String> keySet = json.keySet();
        List<String> sortKeys=new ArrayList<String>();
        for (String key : keySet) {
            sortKeys.add(key);
        }
        Collections.sort(sortKeys);
        StringBuilder builder=new StringBuilder();
        for (String sortKey : sortKeys) {
               builder.append(sortKey).append("=").append(json.get(sortKey)).append("&");
        }
        return builder.toString();
    }
	 /** * @author  段言琪
     * @date 2019年1月18日 上午10:38:29
     * @version 1.0
     * 通过Key排序 并拼接和value
     */
    public static String sortJsonValueToStr(JSONObject jsonObject,String sign){
        Set<String> keySet = jsonObject.keySet();
        List<String> sortKeys=new ArrayList<String>();
        for (String key : keySet) {
            sortKeys.add(key);
        }
        Collections.sort(sortKeys);
        StringBuilder builder=new StringBuilder();
        for (String sortKey : sortKeys) {
            if (!sortKey.equals(sign)) {
                builder.append(jsonObject.get(sortKey));
            }
        }
        return builder.toString();
    }
}
